<template>
    <div class="rank">
        <div class="title">
            <p>热门景区排行</p>
            <img src="../../images/dataScreen-title.png" alt="">
        </div>
        <div class="charts" ref="charts"></div>
    </div>
</template>

<script lang="ts" setup>
import { ref, onMounted } from 'vue'
import * as echarts from 'echarts'
const charts = ref()
onMounted(() => {
    const myCharts = echarts.init(charts.value)
    myCharts.setOption({
        // 标题组件
        title: {
            // 主标题
            text: '景区排行',
            // 超链接
            link: 'https://www.baidu.com',
            // 调整标题位置
            left: 5,
            top: 50,
            // 文字样式
            textStyle: {
                color: '#fff'
            },
            // 子标题
            subtext: '各大景区',
            // 子标题的样式
            subtextStyle: {
                color: '#fff',
                fontSize: 16
            }
        },
        // x轴组件
        xAxis: {
            type: 'category',//代表图形在x轴上均匀分布
        },
        // y轴组件
        yAxis: {
            // type: 'value',
            axisLine: {
                show: true
            },
            // 显示刻度线
            axisTick: {
                show: true
            },
        },
        // 布局组件
        grid: {
            left: 10,
            right: 20,
            top: 110,
            bottom: 10,
            containLabel: true
        },
        // 系列组件
        series: [
            {
                type: 'bar',
                data: [10, 20, 30, 40, 50, 60, 70, 80, 90, 100],
                barWidth: 10, // 柱子宽度
                itemStyle: {
                    color: 'cyan',
                    barBorderRadius: 10, // 添加圆角
                },
                // 柱状图的文本标签
                label: {
                    show: true,
                    position: 'top', //在顶上显示
                    color: 'blue'
                }
            },
            {
                type: 'line',
                data: [10, 20, 30, 40, 50, 60, 70, 80, 90, 100],
                smooth: true, // 平滑曲线
            }
        ],
        // 提示框组件
        tooltip: {
            show: true,
            formatter: '{b} : {c}'
        }
    })
})
</script>

<style lang="scss" scoped>
.rank {
    width: 100%;
    height: 100%;
    // background: url(../../images/dataScreen-main-lb.png) no-repeat;
    background-size: 100% 100%;

    .title {
        margin-left: 20px;

        p {
            font-size: 20px;
            color: #fff;
        }
    }

    .charts {
        width: 100%;
        height: calc(100% - 36px);
    }
}
</style>